package br.com.comprasPublicas.entity;

import java.io.Serializable;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

/**
 *
 * @author helsen_rafael
 * @since 11/01/11
 */
@Entity
public class Cidade implements Serializable {
    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int id_cidade;

    @Column(name="nome_cidade", length=50, nullable=false)
    private String nome;

    @Column(name="estado", length=2, nullable=false)
    private String estado;
    
    @Column(name="cep_cidade", length=10, nullable=false)
    private String cep;

    @OneToMany(mappedBy="cidade",fetch=FetchType.LAZY)
    private Set<Endereco> endereco;

    @Cascade(CascadeType.ALL)

    /**
     * @return the id_cidade
     */
    public int getId_cidade() {
        return id_cidade;
    }

    /**
     * @param id_cidade the id_cidade to set
     */
    public void setId_cidade(int id_cidade) {
        this.id_cidade = id_cidade;
    }

    /**
     * @return the nome
     */
    public String getNome() {
        return nome;
    }

    /**
     * @param nome the nome to set
     */
    public void setNome(String nome) {
        this.nome = nome;
    }

    /**
     * @return the estado
     */
    public String getEstado() {
        return estado;
    }

    /**
     * @param estado the estado to set
     */
    public void setEstado(String estado) {
        this.estado = estado;
    }

    /**
     * @return the cep
     */
    public String getCep() {
        return cep;
    }

    /**
     * @param cep the cep to set
     */
    public void setCep(String cep) {
        this.cep = cep;
    }

    /**
     * @return the endereco
     */
    public Set<Endereco> getEndereco() {
        return endereco;
    }

    /**
     * @param endereco the endereco to set
     */
    public void setEndereco(Set<Endereco> endereco) {
        this.endereco = endereco;
    }

}
